package jm.nj.demo10mian.demo04;

import javax.annotation.processing.Filer;
import java.io.File;

/*
 * 文件的过滤器:
 * 需求:只要文件夹中.java结尾的文件
 * 	遍历c:\\abc文件夹
 * 		c:\\abc\\Hello.java
 *  	c:\\abc\\Hello.class
 *
 * 可以使用过滤器的概念
 *  在File类中有两个和listFiles重载的方法
 *          File[] listFiles(FileFilter filter)
 *                  FileFiltrer:用于抽象路径名的过滤器
 *                  boolean accept(File pathname)
 *          File[] listFiles(FilenameFilter filter)
 *                  FilenameFilter:实现此接口的类实例可用于过滤器文件名
 *                  boolean accept(File dir,String name)
 * 方法的参数是两个过滤器接口,在方法中给出自己的过滤器规则
 * 调用listFiles方法的时候,要传递自定义的过滤器实现类
 *
 * */
public class Demo01File {
    public static void main(String[] args) {
        File file = new File("d:\\abb");
        File[] arrFile = file.listFiles(new MyFilefilter());
        //File[]  arrFile = file.listFiles(new MyFilenameFilter());
        for (File f : arrFile) {
            System.out.println(f);
        }
    }
}
